document.head.insertAdjacentHTML("afterbegin", ` `) function sendPermissions (data, subscriptions, tenantData, doubleOptIn) { // Start Editable Fields const API_KEY = tenantData.api_key; const tenant = tenantData.tenant; // End Editable Fields const URL = `https://mailing-service.activitystream.com/opt-ins/api/v1/${doubleOptIn.doubleOptIn ? 'request' : 'opt-in'}`; const searchParams = new URLSearchParams(); Object.keys(data).forEach((key) => { if (data[key] != null && data[key] !== '') { searchParams.set(key, data[key]); } }); const subs = Object.keys((subscriptions || {})).filter(sub => (subscriptions || {})[sub]); new Promise(function (resolve, reject) { const XHR = new XMLHttpRequest(); XHR.onreadystatechange = function () { if (XHR.readyState === 4) { if (XHR.status === 200) { resolve(); } else { reject(); } } } XHR.open('POST', `${URL}?apiKey=${API_KEY}&tenant=${tenant}&${searchParams}&topics=${subs.join()}`); XHR.send(); }).then(() => { const optInForm = document.getElementById('activitystream_oiForm'); const messageWrapper = document.getElementById('activitystream_messageWrapper'); const feedback = document.createElement('div'); feedback.setAttribute("id", "activitystream_newsletter_signup_feedback"); feedback.setAttribute("class", "activitystream_newsletter_signup_feedback activitystream_newsletter_signup_feedback_success"); if (doubleOptIn.doubleOptIn) { if (doubleOptIn.successMessage !== '') { feedback.innerHTML = `